As computer networks have grown rapidly, data synchronization has grown rapidly in many fields such as healthcare, telecom, retail, etc. Using data synchronization technology enables an enterprise application and data to be securely sent to a terminal device via a computer network. The terminal device can always keep in synchronization with data in a central database of an enterprise via a synchronization server.
A typical technology of data synchronization is synchronization markup language (SyncML), whereby data may be synchronized in various types of devices such as a terminal device of a user or a central database of an enterprise, using synchronization markup language. The user may also utilize different devices to access and process the same data. Using synchronization markup language, the user may synchronize the modification of a local copy of source data in his terminal device to the central database of the enterprise located in a network via a synchronization server at any time, and the central database may also synchronize the latest copy of source data to the terminal device via a synchronization server at any time. Since data synchronization technology enables the user of a terminal device to access the required information at any time and location without limitation, the efficiency of the mobile task is significantly improved.
However, as service requirements change, data schema of data may evolve. For instance, data schema of electronic case history records in the healthcare field may gradually evolve with changes in industry standards. New data schema produced thereby may not be compatible with the original data schema. When data synchronization is performed, such non-compatibility may cause problems. For instance, since data schema is evolved, the data schema used by the local copy of source data in the terminal device may not be compatible with the data schema used by source data in the central database, such that the modification to the local copy of source data submitted by the terminal device via the synchronization server will not be correctly applied into source data in the central database.